package com.homedo.odin.solution.dao;

import com.homedo.core.common.base.dao.BaseDao;
import com.homedo.odin.solution.model.entity.CommonTypeData;
import java.util.List;
import org.apache.ibatis.annotations.Param;

/**
 * <p> 基础类型数据表 Mapper 接口 </p>
 *
 * @author HarveyDing
 * @since 2018-03-08
 */
public interface CommonTypeDataMapper extends BaseDao<CommonTypeData> {

    /**
     * /** 根据id获取他的子孙节点,返回map
     */
    List<CommonTypeData> getChildDataMapById(@Param("id") Integer id);

    CommonTypeData getCommonTypeDataById(@Param("id") Integer id);

    List<CommonTypeData> querySpecificationclassifyList(@Param("parentId") Integer parentId);

    List<CommonTypeData> queryDataByName(@Param("name") String name, @Param("parentId") Integer parentId);

    Integer addCommonTypeData(CommonTypeData addcommonTypeData);

    List<CommonTypeData> queryChildNodeById(@Param("id") Integer id);

    Integer editCommonDataById(@Param("id") Integer id, @Param("sort") Integer sort, @Param("name") String name);

    /**
     * 根据parent节点批量修改为是否高亮
     */
    void updateCommonDataNoHighlightByParentId(@Param("id") Integer id, @Param("highlight") Integer highlight);

    /**
     * 根据子节点修改为是否高亮
     */
    void updateCommonDataNoHighlightById(@Param("id") Integer id, @Param("highlight") Integer lighlight);

    List<CommonTypeData> queryChildNodeBy(@Param("parentId") Integer parentId, @Param("highlight") Integer highlight);

    CommonTypeData queryLateCommonTypeData(@Param("ids") int[] ids);

    List<CommonTypeData> selectByParentIdAndIds(@Param("buildingTypeArr") String[] buildingTypeArr);
}